home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_400 / 411_02 / vim / readme2.0 < prev    next >
Text File  |  1993-12-13  |  25KB  |  663 lines

  1. This is a summary of the modifications from Vim version 1.27 to version 2.0.
  2.  
  3. Incompatible changes
  4. ====================
  5.  
  6. The 'exrc' and 'secure' options are default off. If you want Vim to read a
  7. .exrc or .vimrc in the current directory, you will have to set 'exrc' in your
  8. global .exrc or .vimrc. People doing this are supposed to know about the
  9. security problems, so they don't need the 'secure' option set. This is also
  10. more vi-compatible.
  11.  
  12. Renamed quoting to visual select and swapped 'q' and 'v' keys to avoid
  13. problems with CTRL-Q. This is also more Elvis compatible. The commands now are:
  14.     'v'        start character-wise visual select
  15.     'V'        start line-wise visual select
  16.     CTRL-V        start block-wise visual select
  17.  
  18.     'q'        start recording
  19.     'Q'        formatting operator
  20.  
  21. Changed CTRL-R into CTRL-Y for insert mode (copy character from line above).
  22. This is more logical when comparing the meaning of CTRL-E and CTRL-Y in
  23. command mode and insert mode.
  24.  
  25. Replaced CTRL-B with CTRL-R (insert contents of a register) in insert mode.
  26. This mnemonic is more logical, because "register" is used in the documentation. 
  27.  
  28. Added ":pwd" command and made ":cd" without an argument for Unix go to home
  29. directory. This is more vi-compatible and behaves the same as the unix cd
  30. command. The ":cd" command for MSDOS and Amiga versions is unchanged, these
  31. machines don't have a home directory.
  32.  
  33. With the 'confirm' option to :s anything but 'y', 'n', ESC, CTRL-C or 'q' is
  34. ignored. Nothing happens until you type a valid character. Quit substitution
  35. with <q>, ESC and CTRL-C. 
  36.  
  37. Swapped 'u' and 'U' for visual mode. 'u' makes lower case, 'U' upper. This is
  38. more logical.
  39.  
  40. Added 'wildchar' option for filename completion. The default is <TAB> instead
  41. of <ESC>. Most other programs use this and it avoids problems with terminal
  42. sequences that start with <ESC> (one second wait before filename completion
  43. starts).
  44.  
  45. Changed short name of 'showmode' option from "mo" to "smd".
  46.  
  47. Changed short name of 'modelines' from 'ml' into 'mls'. This is vi-compatible.
  48.  
  49. Changed meaning of the argument to :cf. The 'errorfile' option will now be
  50. set to the argument.
  51.  
  52.  
  53. Major improvements
  54. ==================
  55.  
  56. Added horizontal scrolling and 'wrap' option. This allows the user to choose
  57. between line wrap (you see all the text but long lines mess up the layout)
  58. and horizontal scrolling (correct layout but you see only a part of long
  59. lines).
  60.  
  61. Added 'sidescroll' option. It is the number of columns to jump when the
  62. cursor gets off of the screen while the 'wrap' option is off. The default is
  63. 0, which means that the cursor is centered on the screen. Set it to a small
  64. number if you have fast screen I/O.
  65.  
  66. Wildcard expansion has been made more compatible with other programs. Added
  67. 'wildchar' option; default is <TAB> instead of <ESC>. With multiple matches
  68. first match is inserted. CTRL-A inserts all matches. With CTRL-D command: If
  69. file is a dir '/' is added. WILD_CARDS code now always included, no
  70. compile-time option anymore. 'wildchar' is only recognized when typed, not in
  71. a macro (prevents problems with macros containing TABs).
  72.  
  73. CTRL-L on commandline inserts longest common part of filename completion. Now
  74. you can choose between using TAB (or 'wildchar') for getting the first match
  75. or CTRL-L for getting the longest match.
  76.  
  77. Added automatic textmode (lines ending in CR-LF instead of LF) detection and
  78. 'textauto' option. This works when starting to edit a file and when doing a
  79. ":r" command. This is useful on MS-DOS systems with a network file system and
  80. when editing an MS-DOS floppy on Unix or Amiga. Added [(no)textmode] message
  81. to readfile() and writeit(). Now you can see when unexpected line separators
  82. have been detected or are being used.
  83.  
  84. Added "-b" command line option. This makes it more easy to edit binary files
  85. without unexpected effects.
  86.  
  87. Added ":make" command, 'errorformat' option and argument to -e option. Now you
  88. can do your compiling from within Vim and automatically jump to the line where
  89. the error is. Can be adjusted to work with many compilers. The command to be
  90. executed with ":make" can be set with the  'makeprg' option. '%' and '#' in
  91. the 'makeprg' option are expanded as usual in a command line. 
  92.  
  93. Added reverse insert mode, 'revins' option and CTRL-P command. Now you can
  94. type backwards!
  95.  
  96. Added abbreviations. They work in insert mode and in command line mode, just
  97. like Vi. Also added :iabbr, :cabbr and friends: abbreviations for command line
  98. only or insert mode only. Added dumping of abbreviations to :mkexrc.
  99.  
  100. Added ":center" (center the lines), ":left" (left adjustment) and ":right"
  101. (right adjustment). ":center" and ":right" use the 'textwith' option.
  102.  
  103. Added bios calls for MSDOS screen output, ansi.sys no longer required.
  104. Screen updating much faster now and works with more video modes. Added pcansi
  105. termcap for when not using the console.
  106.  
  107.  
  108. Other improvements
  109. ==================
  110.  
  111. If 'expandtab' is set, spaces will also be used in indents.
  112.  
  113. 'tabstop' maximum removed.
  114.  
  115. Digraphs also work in the command line.
  116.  
  117. Added :redo, same as CTRL-R.
  118.  
  119. Added '-x' option for the Amiga version. The current window will be used, but
  120. shell commands are not possible. Handy when starting Vim from a mail program.
  121.  
  122. Added 'secure' option. When reset you don't get the warnings from reading a
  123. .vimrc/.exrc file in the current directory.
  124.  
  125. Added 'exrc' option. Now you can switch the reading of ".exrc/.vimrc" off.
  126.  
  127. Added "vim:" modelines. Other vi versions allowed all ex commands in
  128. modelines, vim only allows set commands. Use "vim:" to avoid confusion.
  129.  
  130. Optimized position of ruler and shown command.
  131.  
  132. Improved redrawing of long command lines.
  133.  
  134. Added <SC_UP> and <SC_DOWN> to command line editing. This finds the
  135. next/previous command that starts with the text in front of the cursor.
  136.  
  137. Added CTRL-B and CTRL-E to command line editing. Go to begin/end of the
  138. command line.
  139.  
  140. With ":w!" readonly is reset.
  141.  
  142. If possible the cursor is switched off while visual selecting. Makes it more
  143. clear what is selected.
  144.  
  145. Format deletes blanks at end of lines. This makes it possible to use
  146. formatting to limit the text to a certain number of columns (e.g. 80).
  147.  
  148. Modelines quits after first error. This avoids a long list of errors when
  149. editing a text with "vi:" accidently embedded (e.g. vim.hlp).
  150.  
  151. Optimized undo for delete. Now only 2/3 of the memory used and less copying of
  152. lines. Speed up when deleting a lot of lines in a big file.
  153.  
  154. Added :suspend, same as CTRL-Z.
  155.  
  156. Added command-line-only mapping ":cmap", insert-mode-only ":imap" and the
  157. associated unmap and noremap commands. Now you can enter mappings for every
  158. mode (command/insert/command-line) separately.
  159.  
  160. Changed smart-indent a little.
  161.  
  162. Now one free chunk list per allocated block in storage.c. Makes editing big
  163. files a bit faster.
  164.  
  165. Added repeat to visual select. now you can select the same area again.
  166.  
  167. Improved showmatch() for uneven number of quotes.
  168.  
  169. Added 'paste' option. This makes it easy to swith between typing and inserting
  170. text with a cut/paste method. Doing ":set nopaste" before ":set paste" does
  171. not do anything. 
  172.  
  173. Added sFilename: Filename without path. Mostly only the name you typed is
  174. shown, but internally the full path name is remembered. Otherwise the ":cd"
  175. command would mess up the real file name. Use short file name as long as :cd
  176. not used. If one does not use :cd the short file name will be valid. This
  177. will avoid long path names to be printed on the status line and having to
  178. "hit return to continue". It is also better to avoid problems with some
  179. networks where the absolute path is not valid after a while. If :cd has been
  180. used the full path name needs to be used to get to the right file.
  181.  
  182. Changed :digraph in :digraphs. Now "digraph" and "digraphs" both work.
  183.  
  184. Added emsg2() for more informative error messages. For example: "Cannot open
  185. <filename> for writing" with :mkexrc.
  186.  
  187. Made 'r' command use get_literal(). Now you enter the decimal code for the
  188. replacement character with CTRL-V nnn, where nnn is any decimal number.
  189.  
  190. Added def